home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Cream of the Crop 26
/
Cream of the Crop 26.iso
/
printer
/
jcosub26.zip
/
FONTSPEC.DOC
< prev
next >
Wrap
Text File
|
1996-03-12
|
9KB
|
185 lines
JACOsub FONT SPECIFICATIONS
===========================
Note: You do not need to read this unless you plan to design your own
fonts for use with JACOsub. If you don't have such plans, then this
document will only confuse you.
JACOsub will work with all fonts supported by the Amiga operating system.
To get the most effective use out of JACOsub, some consideration must be
given to fonts and how they are used by the program. This document covers
the following topics:
1. Font types
a. Mono-color fonts
b. Color bitmap fonts
c. Fixed width versus proportional fonts
2. Standard character set
3. Reserved character codes
4. Controlling boldface thickness
5. Converting from other font formats
1. FONT TYPES
--------------
a. Mono-color fonts
--------------------
JACOsub can read all Amiga mono-color bitmap fonts and, under AmigaDOS 2.0
and above, CompuGraphic scalable outline fonts (once loaded in memory, all
fonts are treated as bitmap fonts). These fonts are all mono-color. If
you wish JACOsub to display them with an outline and/or dropshadow, you
must use the FO and/or the FS directives in your script, respectively.
Alternately, you can load these fonts into a font editor such as
Calligrapher and build your own outline and shadow around the font images,
thereby converting the font to a multi-color font.
b. Color bitmap fonts
----------------------
AmigaDOS 2.0 and higher has direct support for multi-color (actually this
means "multi-bitplane") fonts. AmigaDOS 1.3 requires a colortext driver
to be loaded prior to using color fonts. JACOsub will load any color
bitmap font. However, for JACOsub to have proper control over the font
colors, it expects one important thing about bitmap assignments: The
pixels making up the font face (the part of the character image having an
adjustable color) must occupy ONLY bitmap 0.
This is equivalent to saying, if you stripped the font down to one bitmap,
turning it into a mono-color font, none of the font-face image information
should be lost, although other imagery (like dropshadows) would be lost.
And indeed, if you try to use any JACOsub font under AmigaDOS 1.3 without
first loading a colortext driver, the fonts appear like normal mono-color
fonts, with no outlines or shadows.
It is important to remember that a font's own internal color definitions
have nothing to do with the colors on the screen in which they are
displayed. The display's color palette controls the appearance of the font
colors.
For JACOsub compatibility, the font's internal color assignments should be
as follows when designing a font:
Color Bitplanes used Assignment
-------------------------------------------------------------
0 none Background (transparent to genlock)
1 0 Font face imagery
2 1 Font outline/shadow imagery
All JACOsub color fonts are 2-bitplane (4-color) fonts. As you can see
colors 0, 1, and 2 are reserved for specific uses. Color 3 is available in
a 2-bitplane font, but it is not used in the JACOsub font definitions.
Color 3 may be used; however, it will appear as a fixed color changeable
only through modifying JACOsub's color palette.
It is unlikely that your video titling application will require more colors
internal to a font than 4. If you need more, just remember to design your
font with colors 0, 1, and 2 reserved with the assignments above, and you
can do whatever you like with the other colors.
c. Fixed-width versus proportional fonts
-----------------------------------------
JACOsub treats fixed-width fonts slightly differently than proportionally-
spaced fonts in calculating screen area used by titles. The program also
will allow only fixed-width fonts (like JACOsub 18) to be used as a timing
font for display on the running clock or on the timing screen, and it will
perform flush-justification only on proportional fonts.
Do not try to load a fixed-width font into Calligrapher! You'll be sorry
you did. Calligrapher fouls up the spacing and width of fixed-width fonts.
It is an excellent font editor for proportional fonts, however.
2. STANDARD CHARACTER SET
--------------------------
The Amiga uses the ECMA-94 Latin 1 international 8-bit character set, also
known as the ISO 8859-1 character set. Most operating systems except MSDOS
support this standard. The JACOsub software does not care how each
character code looks on the screen; however, the proportionally-spaced
JACOsub fonts were designed for the most part to conform to the
international standard (the fixed-width JACOsub 18 font is a pure ASCII
font with no funny foreign high-bit characters).
For typographical convenience, the character set contains some useful
characters not normally available from the keyboard. Character code 173
(0xAD), for example, referred to as SHY, appears as an em-dash. This is a
long dash useful for pauses in speech; much better than using a hyphen.
Quotation marks are another example. Using pairs of left and right single
quotes (`` '') comes out looking more like typeset quotes in the JACOsub
character set; much better than normal double-quote characters (" "). And,
of course, for Japanese Animation, we can't do without the Yen (Ñ) symbol,
code 165 (0xA5).
JACOsub's "Hex Entry" menu selection, which allows you to access characters
not normally available from the keyboard, will display the international
character set, and not the caracter images which happen to be in your font
of interest. This menu display will match the JACOsub characters, however.
The large JACOsub (36 pixel height) font is missing some character images
to save space. These images are unlikely to be used. The character codes
for the missing characters are (in hex) A0, A2, A4, A6-A8, AA, AC, AE, AF,
B0-BA, BC-BE, D7, and F7.
If you distribute a script using high-bit characters, you should make sure
to use a font like the JACOsub fonts, which conform to the international
standard, so that other people can make use of your script.
3. RESERVED CHARACTER CODES
----------------------------
JACOsub reserves a few character codes for special uses. One use is the
"hard space" designated in your scripts with a tilde (~) and treated
internally during script compilation as a control-A (0x01). This is
temporary, and reverts to a normal space after wordwrapping, but the
presence of a control-A in your script will be treated as a hard space.
You should not beusing ANY control characters in your script anyway.
Another special-use character is for flush-justifying both margins of a
text block. For this, JACOsub must commandeer one character out of the
character set to use as an adjustable space when calculating text widths
and displaying titles. The character code for this adjustable space will
be 128 (0x80), 31 (0x1f) or 127 (0x7f), searched in that order, depending
on what is available in the font. Except for 127 (the DEL character),
these character codes are normally non-displayable, and therefore they are
safe to substitute with a displayable space. One of these character codes
must exist in your font for flush-justification to work. Flush
justification is not supported for fixed-width fonts; you can do that
yourself by adjusting the number of spaces between words.
4. CONTROLLING BOLDFACE THICKNESS
----------------------------------
If a font is not already designed as a boldface font, the Amiga OS can
generate this style algorithmically, resulting in a horizontal thickening
of the characters. The extent of this thickening is controlled by a
parameter called BoldSmear in the font data structure.
Normally, all JACOsub fonts have a BoldSmear value of 1, meaning that
boldface text will be generated by thickening normal text horizontally by 1
pixel. This value is fine for small screen fonts which you usually use
with computer appications, but for large video title fonts like thickening
by just 1 pixel will result in a font that is not noticeably "bold." As of
version 2.5, all proportionally-spaced JACOsub fonts have a BoldSmear value
of 2. The SuperHires fonts have a BoldSmear value of 3.
If you design your own font, most font editors do not provide a way to
change BoldSmear. You can do that yourself easily, however, with a binary
editor like NewZap. Simply load up the font data file (the file that
begins with a number, like "18" or "36.4C"). The byte at hexadecimal
offset $0077 is the BoldSmear value; it usually contains the value $01.
Change it to 2. Any more than 2 will probably be too much.
5. CONVERTING FROM OTHER FONT FORMATS
--------------------------------------
I can't help you here. I know that utilities exist to convert, for
example, TrueType fonts to Amiga-compatible format. There's another
utility called ATE which allows the Amiga operating system to support
PostScript fonts directly. Anybody who wants to fill in this documentation
section is welcome to do so.
Send revisions to matuli_a@marlin.navsea.navy.mil.